home *** CD-ROM | disk | FTP | other *** search
/ Gold Medal Software 1 / Gold Medal Software Volume 1 (Gold Medal) (1994).iso / drivers / ljp3fw.arj / LJPRTIII.DOC < prev    next >
Text File  |  1993-09-15  |  44KB  |  1,093 lines

  1. /*
  2. ╔════════════════════════════════════════════════════════════════════════════╗
  3. ║ Header......: LJPRTIII.OBJ                                                 ║
  4. ║                                                                            ║
  5. ║ System......: HP LaserJet Series III / PCL 5 print driver                  ║
  6. ║                                                                            ║
  7. ║ Author......: Kevin Loucks                                                 ║
  8. ║             : Box 15303                                                    ║
  9. ║             : Minneapolis  MN  55415-0303                                  ║
  10. ║             :                                                              ║
  11. ║             : (612) 376-0054                                               ║
  12. ║             :                                                              ║
  13. ║             : CI$ 76276,1333                                               ║
  14. ║                                                                            ║
  15. ║     Copyright 1993, Kevin Loucks   All rights reserved!         .          ║
  16. ║                                                                            ║
  17. ║Last modified: September 15, 1993                                           ║
  18. ║                                                                            ║
  19. ║ Purpose.....: Facilitates full page print procedures and line graphics     ║
  20. ║             : functions on HP LaserJet Series III printer using LJPRTIII   ║
  21. ║                                                                            ║
  22. ║                                                                            ║
  23. ║                                                                            ║
  24. ║                                                                            ║
  25. ║ Req Hardware: HP LaserJet Series III Printer / fully PCL 5 compatible Laser║
  26. ║             : Printer - I haven't tested this on PCL 4 Printers but if they║
  27. ║             : are HP compatible they should just ignore what they can't    ║
  28. ║               support                                                      ║
  29. ║                                                                            ║
  30. ║ Req Software: Clipper 5.01a or 5.2c                                        ║
  31. ║                                                                            ║
  32. ║ Compilation.: Clipper LJPRTIII /A /M /N /W                                 ║
  33. ║                                                                            ║
  34. ║                                                                            ║
  35. ╚════════════════════════════════════════════════════════════════════════════╝
  36. *
  37.              The Fine Print
  38.  
  39.  
  40.  
  41.  
  42.       LJPRTIII
  43.  
  44.       Copyright 1993 Capitol City Software, Inc.
  45.       All Rights Reserved Worldwide.
  46.       A product of the United States of America.
  47.  
  48.  
  49.       LJPRTIII(TM) is a trademark of Capitol City Software, Inc.
  50.       All trademarks and registered trademarks referenced within
  51.       this document are the property of their respective owners.
  52.  
  53.  
  54.       Capitol City Software, Inc.
  55.       POST OFFICE BOX 15303
  56.       Minneapolis, Minnesota  55415-0303  USA
  57.  
  58.  
  59.    LICENSE AGREEMENT
  60.  
  61.    The LJPRTIII(TM) product is NOT "Public Domain". It is "Freeware".
  62.    LJPRTIII is a copyrighted software product developed and owned by Capitol
  63.    City Software, Inc. located in Minneapolis, Minnesota, U. S. A. Capitol
  64.    City Software, Inc. grants you without charge the right to reproduce,
  65.    distribute and use copies of this version of our LJPRTIII freeware
  66.    software product, subject to the limitations specified below, and on the
  67.    express condition that you do not receive any payment, commercial
  68.    benefit, or other consideration for such reproduction or distribution,
  69.    or change this license agreement or the following copyright notice which
  70.    appears in the software, documentation, user interface, menus, and
  71.    magnetic media: Copyright 1993 Capitol City Software, Inc. All rights
  72.    reserved worldwide.
  73.  
  74.    Limitations: You may make and keep as many copies of the software for your
  75.    personal use as you like, provided that (i) you copy all the copyright,
  76.    trademark, and other information indicated on the initial screen display
  77.    (or on the diskette label, or in this document). Also you may
  78.    distribute copies to other persons, LJPRTIII must NOT be sold or otherwise
  79.    provided as part of a larger system, or as a part of a more inclusive
  80.    product or service, without express written consent and licensing from
  81.    Capitol City Software, Inc.
  82.  
  83.    The rights to receive any such financial or other benefit, and to modify
  84.    the product or employ its components in any kind of derivative work, are
  85.    reserved exclusively by Capitol City Software, Inc.
  86.  
  87.    Contact us at:
  88.  
  89.    Capitol City Software, Inc.
  90.    Post Office Box 15303
  91.    Minneapolis, Minnesota 55415-0303 USA
  92.  
  93.  
  94.    Please feel free to contribute your ideas regarding
  95.    desired additional product features and functionality.
  96.  
  97.  
  98.        LJPRTIII 1.04   Copyright 1993 Capitol City Software, Inc.
  99.  
  100.        THIS PRODUCT IS LICENSED "AS IS" WITHOUT ANY WARRANTY OF
  101.        MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE,
  102.        PERFORMANCE, OR OTHERWISE; ALL WARRANTIES ARE EXPRESSLY
  103.        DISCLAIMED. BY USING THE LJPRTIII PRODUCT, YOU AGREE THAT
  104.        NEITHER CAPITOL CITY SOFTWARE, INC. NOR ANY OFFICERS,
  105.        DIRECTORS, EMPLOYEES, SHAREHOLDERS, AFFILIATES, OWNERS,
  106.        OR OTHER RELATED PARTIES WILL BE LIABLE TO YOU OR ANY
  107.        THIRD PARTY FOR ANY USE OF (OR INABILITY TO USE) OR
  108.        PERFORMANCE OF THIS PRODUCT, OR FOR ANY DAMAGES WHATSOEVER
  109.        WHETHER BASED ON CONTRACT, TORT OR OTHERWISE. EVEN IF WE
  110.        ARE NOTIFIED OF SUCH POSSIBILITY IN ADVANCE. (SOME STATES
  111.        DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR
  112.        CONSEQUENTIAL DAMAGES, SO THE FOREGOING LIMITATION MAY NOT
  113.        APPLY TO YOU.)
  114.  
  115.        You may not modify, or create derivative works of the product.
  116.  
  117.        Restricted Rights Legend
  118.  
  119.        Use, duplication, or disclosure by the Government is
  120.        subject to restrictions as set forth in sub paragraph
  121.        (c) (1) (ii) of the Rights in Technical Data and Computer
  122.        Software clause of DFARS 252.227-7013. Capitol City Software,
  123.        Inc., Post Office Box 15303, Minneapolis MN 55415-0303 USA.
  124.  
  125.  
  126.           LJPRTIII (tm) 1.03   Copyright 1993 Capitol City Software, Inc.
  127.  
  128.   If you find LJPRTIII (tm) to be a useful addition to your software library,
  129.   and want a copy of the source code complete the enclosed license
  130.   form and return it along with the indicated license fee.
  131.  
  132.   The reasonable LJPRTIII (tm) source code license fee provides the following;
  133.   you will be mailed a diskette containing the most recent LJPRTIII (tm)
  134.   version, a printed listing of all pertinent source code link scripts and
  135.   make files. No technical support is provided or included in that license
  136.   fee.
  137.  
  138.  
  139. * *
  140. ╔════════════════════════════════════════════════════════════════════════════╗
  141. ║ DEFINITIONS:                                                               ║
  142. ║                                                                            ║
  143. ║          Dots = 1/300th of an inch                                         ║
  144. ║    Decipoints = 1/720th of an inch                                         ║
  145. ║        Inches = 300 dots                                                   ║
  146. ║          Rows = 300 dots / current Lines Per Inch (LPI) setting            ║
  147. ║       Columns = 300 dots / current Characters Per Inch (CPI) setting       ║
  148. ║                                                                            ║
  149. ║ X axis = measured in Dots, Decipoints, Inches, Millimeters or Columns      ║
  150. ║ Y axis = measures in Dots, Decipoints, Inches, Millimeters or Rows         ║
  151. ║                                                                            ║
  152. ║                   │                       Dot       = 1/300th of an inch   ║
  153. ║                   │                       DeciPoint = 1/720th of an inch   ║
  154. ║                   │                       Inch      = 300 Dots             ║
  155. ║                   Y                       Row       = 50 Dots @ 6 LPI      ║
  156. ║                   │                       Columns   = 30 Dots @ 10 CPI     ║
  157. ║                   │                                                        ║
  158. ║                  ─.─────X───────                                           ║
  159. ║                   │                                                        ║
  160. ║                                                                            ║
  161. ║                                                                            ║
  162. ║  For more detailed information about HP PCL and the HP LaserJet Series II  ║
  163. ║  see the LaserJet Series II Printer Technical Reference Manual part        ║
  164. ║  number 33440-90905. Or the HP LaserJet IID Technical Reference Manual     ║
  165. ║  Part number 33447-90905.                                                  ║
  166. ║                                                                            ║
  167. ║  FOR A REAL soporific you could order the HP LaserJet III Technical        ║
  168. ║  Reference Manual, part number 33449-90903.                                ║
  169. ║                                                                            ║
  170. ║  They cost between $20 and $30 PLUS shipping and handling direct direct    ║
  171. ║  from HP Personal Peripherals Assist Line  1-208-323-2551                  ║
  172. ║                                                                            ║
  173. ║                                                                            ║
  174. ╚════════════════════════════════════════════════════════════════════════════╝
  175. * *
  176. ╔═══════════Code Conventions: (more or less Hungarian notation)═══════════════╗
  177. ║                                                                             ║
  178. ║     Type Prefixes       State Qualifiers              Qualifier Tags        ║
  179. ║ ─────────────────  ────────────────────────────   ──────────────────────────║
  180. ║ a = Array          new  = new state               alias = alias             ║
  181. ║ b = code Block     sav  = saved                   attr  = attribute         ║
  182. ║ c = Character      tem  = temporary               arr   = array             ║
  183. ║ d = Date           src  = source/original         area  = area              ║
  184. ║ h = Handle         dest = destination/receiving   clr   = color             ║
  185. ║ l = Logical        f    = first as in fname       crs   = cursor            ║
  186. ║ n = Numeric        l    = last as in lname        dbf   = database          ║
  187. ║ o = Object                                        file  = any file          ║
  188. ║ u = Undetermined                                  fld   = field             ║
  189. ║                                                   msg   = message           ║
  190. ╟─────────────────────────────────────────────────┐ name  = any type name     ║
  191. ║                                                 │ ntx   = index             ║
  192. ║ Type Prefix   - a single lowercase character    │ ord   = order             ║
  193. ║                 defining the variable type      │ rec   = record            ║
  194. ║                                                 │ ret   = return value      ║
  195. ║ State tag     - the state of the variable       │ scr   = screen            ║
  196. ║                                                 │ str   = string            ║
  197. ║ Qualifier tag - Represents the variable         │ t     = top               ║
  198. ║                 description. Should normally be │ l     = left              ║
  199. ║                 no longer than 3 or 4 characters│ b     = bottom            ║
  200. ║                                                 │ r     = right             ║
  201. ╟─────────────────────────────────────────────────┤ row   = row               ║
  202. ║                                                 │ col   = column            ║
  203. ║                                                 │ win   = window            ║
  204. ║                                                 │ y     = row               ║
  205. ║                                                 │ x     = column            ║
  206. ╚═════════════════════════════════════════════════╧═══════════════════════════╝
  207.  
  208.  
  209. LJPRTIII (TM) Features List
  210.  
  211.  
  212.    Full support for:
  213.  
  214.        Job Control Commands
  215.  
  216.        Page Control Commands
  217.  
  218.        Cursor Positioning Commands
  219.  
  220.        Font Selection Commands
  221.  
  222.        Font Management Commands
  223.  
  224.        Macro Commands
  225.  
  226.        Print Model Commands
  227.  
  228.        Rectangular Area Fill Graphics Commands
  229.  
  230.        Raster Graphics Commands
  231.  
  232.  
  233.   does not currently provide Support for:
  234.  
  235.        Soft Font Creation Commands
  236.  
  237.        HP-GL/2 Graphics
  238.  
  239.  
  240.  These functions comprise the LJPRTIII (tm) library:
  241.  
  242.  
  243.    Function..: LJ_SetJob
  244.  
  245.    Purpose...: processes Job Control Commands and transmits them to the
  246.              : printer
  247.  
  248.  
  249.    Parameters: nCommand
  250.              : nValue
  251.              : nMethod
  252.              :
  253.  
  254.    Returns...: previous value for the nCommand selected
  255.  
  256.  
  257.  
  258.    Function..: LJ_SetPage
  259.  
  260.    Purpose...: processes Page Control Commands and transmits them to the
  261.              : printer
  262.  
  263.  
  264.    Parameters: nOption
  265.              : nValue
  266.              :
  267.  
  268.    Returns...: the previous status for nOption
  269.  
  270.  
  271.  
  272.    Function..: LJ_PosRC
  273.  
  274.    Purpose...: positions the print cursor via row and col coordinates
  275.              : does not use cursor push & pop
  276.  
  277.    Parameters: nRow
  278.              : nCol
  279.              : nRelRow
  280.              : nRelCol
  281.              :
  282.  
  283.    Returns...: NIL
  284.  
  285.  
  286.  
  287.    Function..: LJ_PosDeci
  288.  
  289.    Purpose...: positions the print cursor via inches converted to decipoints
  290.              : does not use cursor push & pop
  291.  
  292.    Parameters: nInRow
  293.              : nInCol
  294.              : nRelRow
  295.              : nRelCol
  296.              :
  297.  
  298.    Returns...: NIL
  299.  
  300.  
  301.  
  302.    Function..: LJ_PosDots
  303.  
  304.    Purpose...: positions the print cursor via inches converted to decipoints
  305.              : does not use cursor push & pop
  306.  
  307.    Parameters: nInRow
  308.              : nInCol
  309.              : nRelRow
  310.              : nRelCol
  311.              :
  312.  
  313.    Returns...: NIL
  314.  
  315.  
  316.  
  317.    Function..: LJ_HalfLn
  318.  
  319.    Purpose...: performs  a half line feed
  320.              :
  321.  
  322.    Parameters: none
  323.              :
  324.  
  325.    Returns...: NIL
  326.  
  327.  
  328.  
  329.    Function..: LJ_SetLn
  330.  
  331.    Purpose...: sets line control
  332.              :
  333.  
  334.    Parameters: nOption
  335.              :  xNewValue
  336.  
  337.    Returns...: cOldValue
  338.  
  339.  
  340.  
  341.    Function..: LJ_LnTerm
  342.  
  343.    Purpose...: changes the line termination behavior
  344.              :
  345.  
  346.    Parameters: nOption
  347.              :  DEFAULT                  0
  348.              :  CR_CRLF                  1
  349.              :  LF_CRLF_CRFF             2
  350.              :  CR_CRLF_CRLF_CRFF        3
  351.              :
  352.  
  353.    Returns...: NIL
  354.  
  355.  
  356.  
  357.    Function..: LJ_PushPop
  358.  
  359.    Purpose...: pushes or pops printer cursor position on or off stack
  360.              :
  361.  
  362.    Parameters: nOption
  363.              :   PUSH    0
  364.              :   POP     1
  365.  
  366.    Returns...: NIL
  367.  
  368.  
  369.  
  370.    Function..:  LJ_Say_YX
  371.  
  372.    Purpose...:  Position a text string at an absolute position on the page
  373.  
  374.    Parameters:  nXYfmt = describes how to evaluate incomming parametest
  375.              :             INCHES   DOTS    ROWCOL  MILLIMETER
  376.              :  nX       = column (X) dot coordinates in string format
  377.              :  nY       = row (Y) dot coordinates in string format
  378.              :  cString  = character string to pass to printer
  379.  
  380.    Returns...: NIL
  381.  
  382.  
  383.  
  384.    Function..:  LJ_Say_YXF
  385.  
  386.    Purpose...:  Position a text string at an absolute position on the page
  387.              :  and format for print to user defined parameters
  388.  
  389.    Parameters:  nXYfmt     = describes how to evaluate incomming parameters
  390.              :  nY         = row (Y) dot coordinates in string format
  391.              :  nX         = column (X) dot coordinates in string format
  392.              :  cString    = character string to pass to printer
  393.              :  cFontStart = the font to invoke before printing the string
  394.              :  cFontEnd   = the font to invoke after printing the string
  395.              :  nUnderLn   = the font to invoke after printing the string
  396.  
  397.    Returns...: NIL
  398.  
  399.  
  400.  
  401.    Function..:  LJ_Send_CC
  402.  
  403.    Purpose...:  transmit control codes and string information to the printer
  404.              :  WITH OUT changing the row and column OR Cursor settings
  405.  
  406.    Parameters:  cString = a character string containing whatever you want
  407.                           to send to the printer
  408.  
  409.    Returns...:  NIL
  410.  
  411.  
  412.  
  413.    Function..:  LJ_Send_NC
  414.  
  415.    Purpose...:  transmit control codes and string information to the printer
  416.              :  changing the row and column and Cursor settings
  417.  
  418.    Parameters:  cString = a character string containing whatever you want
  419.                           to send to the printer
  420.  
  421.    Returns...:  NIL
  422.  
  423.  
  424.  
  425.    Function..: LJ_Font_ID()
  426.  
  427.    Purpose...: select a soft font by its assigned id number
  428.              :
  429.  
  430.  
  431.    Parameters:  nFontNo
  432.              :
  433.  
  434.    Returns...: nil
  435.  
  436.  
  437.  
  438.    Function..:  LJ_FontMng
  439.  
  440.    Purpose...:  Manages the manipulation of soft fonts including the ability
  441.              :  to Download a soft font to the printer, assigns an ID and
  442.              :  define the lifespan of a font(temporary/permanent)
  443.  
  444.    Parameters: nFontMngmt   - font control options
  445.              :   DELETE_ALL         = delete all soft fonts
  446.              :   DELETE_ALL_TEMP    = delete all temporary soft fonts
  447.              :   DELETE_LAST_FONT   = delete soft referenced by cFontID
  448.              :   DELETE_CHAR_CODE   = delete soft refd by cFontID & char code
  449.              :   MAKE_TEMPORARY     = make soft font temporary (cFontID)
  450.              :   MAKE_PERMANENT     = make soft font permanent (cFontID)
  451.              :   COPY_FONT_AS_TEMP  = copy/assign current font as temporary
  452.              :   SELECT_FONT_PRIM   = select soft font id as primary font
  453.              :   SELECT_FONT_SECOND = select soft font as secondary
  454.              :   SELECT_DFLT_PRIM   = select default font as primary font
  455.              :   SELECT_DFLT_SECOND = select default font as secondary
  456.              :
  457.              : nFontOpt    - field with numeric font id for printer
  458.              :
  459.              : cFontOpt    - character field with additional info
  460.  
  461.    Returns...: lResult      true or false = success of routine
  462.  
  463.  
  464.  
  465.    Function..: LJ_Font_SS
  466.  
  467.    Purpose...: builds a font SELECTION STRING and returns it to the calling
  468.              : function
  469.  
  470.  
  471.    Parameters: nPrimSec
  472.              : nSymSet
  473.              : nSpacing
  474.              : nPitch
  475.              : nHeight
  476.              : nStyle
  477.              : nStroke
  478.              : nTypeFamil
  479.              :
  480.  
  481.    Returns...: character string of number of dots
  482.  
  483.  
  484.  
  485.    Function..: LJ_Font_AS
  486.  
  487.    Purpose...: changes a particular font attribute
  488.              :
  489.  
  490.    Parameters: nOption
  491.              :  Symbol Set
  492.              :  Spacing
  493.              :  Pitch
  494.              :  Height
  495.              :  Style
  496.              :  Stroke
  497.              :  Type Family
  498.              :
  499.              : nAttribute
  500.  
  501.    Returns...: nil
  502.  
  503.  
  504.  
  505.    Function..: LJ_TranDat()
  506.  
  507.    Purpose...: transparant print data controls
  508.              :
  509.    Parameters: nOption  = number of bytes of transparent print data
  510.              : nChar    = decimal value of data = 0, 7-15, 27
  511.              :
  512.  
  513.    Returns...: nil
  514.  
  515.  
  516.  
  517.    Function..: Lj_MacroID()
  518.  
  519.    Purpose...: specify a macro id for use by subsequent macro commands
  520.              :
  521.  
  522.  
  523.    Parameters:  nMacroNo =macro id number 1 - 32767
  524.              :
  525.  
  526.    Returns...: nil
  527.  
  528.  
  529.  
  530.    Function..:  LJ_MacroCt()
  531.  
  532.    Purpose...:  controls the installation, definition execution and deletion
  533.              :  of macros
  534.              :
  535.  
  536.  
  537.    Parameters:  nMacroOpt
  538.              :     START_DEFINITION
  539.              :     STOP_DEFINITION
  540.              :     EXECUTE_MACRO
  541.              :     CALL_MACRO
  542.              :     ENABLE_AUTO_OVERLAY
  543.              :     DISABLE_AUTO_OVERLAY
  544.              :     DELETE_ALL_MACROS
  545.              :     DELETE_ALL_TEMP_MACROS
  546.              :     DELETE_MACRO_LAST
  547.              :     MAKE_MACRO_TEMPORARY
  548.              :     MAKE_MACRO_PERMANENT
  549.  
  550.    Returns...: nil
  551.  
  552.  
  553.  
  554.    Function..: LJ_RastSet()
  555.  
  556.    Purpose...: control raster graphics functions
  557.              :
  558.  
  559.  
  560.    Parameters: nCommand
  561.              :    graphics_resolution
  562.              :    presentation_mode
  563.              :    raster_height
  564.              :    raster_width
  565.              :    start_raster_graphics
  566.              :    end_raster_graphics
  567.              :    raster_y_offset
  568.              :    compression_mode
  569.              :
  570.              : nOption
  571.              :
  572.  
  573.    Returns...: nil
  574.  
  575.  
  576.  
  577.    Function..: LJ_RasTran()
  578.  
  579.    Purpose...: transfer an array of decimal equivlants of binary bit
  580.              : patterns
  581.              :
  582.  
  583.  
  584.    Parameters: aRaster = array of values to print
  585.              :
  586.  
  587.    Returns...: nil
  588.  
  589.  
  590.  
  591.    Function..: LJ_Box
  592.  
  593.    Purpose...: draw a box on the page where-ever you like
  594.  
  595.    Parameters: BOX_PARAM_format = describes how to evaluate incomming array
  596.              :     Inches
  597.              :     Dots
  598.              :     Row / Column
  599.              :     millimeters
  600.              : BOX_top_line       = top row (Y) of box
  601.              : BOX_left_side      = left most column (X) of the box
  602.              : BOX_bottom_line    = bottom row (Y) of the box
  603.              : BOX_right_side     = right most column (X) of the box
  604.              : BOX_line_thickness = thickness of the box line in inches
  605.              : BOX_RAF_option     = numeric Rectangular Area Fill command
  606.              : BOX_line_pattern   = pattern for line density
  607.              : BOX_shadow         = shadow indicator for box / 5 options
  608.              :     SHADOW_NONE
  609.              :     SHADOW_NE      north east orientation
  610.              :     SHADOW_SE      south east orientation
  611.              :     SHADOW_NW      north west orientation
  612.              :     SHADOW_SW      south west orientation
  613.  
  614.    Returns...: NIL
  615.  
  616.  
  617.  
  618.    Function..: LJ_Line
  619.  
  620.    Purpose...: define a line and print it
  621.  
  622.    Parameters: nXYfmt = describes how to evaluate incomming parametest
  623.              : nY       = top row (Y) of box
  624.              : nX       = left most column (X) of the box
  625.              : cW       = width of line (X)
  626.              : cH       = height of line (Y)
  627.              : nRAF     = numeric Fill Rectangular Area command
  628.              : nPattern = pattern for line density
  629.  
  630.    Returns...: NIL
  631.  
  632.  
  633.  
  634.  
  635.  
  636. HP LaserJet Printer Commands -- PCL5 Context
  637.  
  638. -----------------------------------------------------------------------------
  639.  FUNCTION                    PARAMETER                           COMMAND                                                         VALUE
  640. ------------------------------------------------------------------------------
  641. JOB CONTROL COMMANDS:
  642. Reset:
  643.   Reset                                                        <Esc>E
  644.   Number of Copies              # of Copies (1-99)             <Esc>&l#X
  645.  
  646. Simplex/Duplex Operation:
  647.   Simplex/Duplex Print          Simplex                        <Esc>&l0S
  648.                                 Duplex
  649.                                 Long-Edge Binding              <Esc>&l1S
  650.                                 Short-Edge Binding             <Esc>&l2S
  651.  
  652.   Long-Edge (Left)
  653.     Offset Registration         # of Decipoints (1/720")       <Esc>&l#U
  654.   Short-Edge (Top)
  655.     Offset Registration         # of Decipoints (1/720")       <Esc>&l#Z
  656.  
  657.   Page Side Selection           Next Side                      <Esc>&a0G
  658.                                 Front Side                     <Esc>&a1G
  659.                                 Back Side                      <Esc>&a2G
  660.  
  661.   Job Separation                                               <Esc>&l1T
  662.  
  663.  
  664. PAGE CONTROL COMMANDS:
  665. Page Length and Size:
  666.   Paper Source                  Eject Page                     <Esc>&l0H
  667.                                 Upper Tray                     <Esc>&l1H
  668.                                 Manual Feed                    <Esc>&l2H
  669.                                 Manual Envelope Feed           <Esc>&l3H
  670.                                 Lower Tray                     <Esc>&l4H
  671.                                 Envelope Feeder                <Esc>&l6H
  672.  
  673.   Paper Destination             Upper Output Bin               <Esc>&l1G
  674.                                 Rear Output Bin                <Esc>&l2G
  675.  
  676.   Page Size                     Executive                      <Esc>&l1A
  677.                                 Letter                         <Esc>&l2A
  678.                                 Legal                          <Esc>&l3A
  679.                                 A4                             <Esc>&l26A
  680.     Envelopes:                  Monarch                        <Esc>&l80A
  681.                                 COM 10                         <Esc>&l81A
  682.                                 DL                             <Esc>&l90A
  683.                                 C5                             <Esc>&l91A
  684.  
  685.   Page Length                   # of Lines                     <Esc>&l#P
  686.  
  687. Orientation:
  688.   Orientation                   Portrait                       <Esc>&l0O
  689.                                 Landscape                      <Esc>&l1O
  690.                                 Reverse Portrait               <Esc>&l2O
  691.                                 Reverse Landscape              <Esc>&l3O
  692.  
  693.   Print Direction               # Degrees of Rotation
  694.                                   (counterclockwise -
  695.                                   90 degree increments only)   <Esc>&a#P
  696.  
  697. Margins and Text Length:
  698.   Top Margin                    # of Lines                     <Esc>&l#E
  699.   Text Length                   # of Lines                     <Esc>&l#F
  700.   Left Margin                   # of Columns                   <Esc>&a#L
  701.   Right Margin                  # of Columns                   <Esc>&a#M
  702.   Clear Horizontal Margins                                     <Esc>9
  703.  
  704.  
  705. Perforation Skip Mode:
  706.   Perforation Skip              Disable                        <Esc>&l0L
  707.                                 Enable                         <Esc>&l1L
  708.  
  709. Horizontal Column Spacing:
  710.   Horizontal Motion Index
  711.     (HMI)                       # of 1/120" Increments         <Esc>&k#H
  712.  
  713. Vertical Line Spacing:
  714.   Vertical Motion Index
  715.     (VMI)                       # of 1/48" Increments          <Esc>&l#C
  716.  
  717.   Line Spacing                  1 line/inch                    <Esc>&l1D
  718.     (Lines per inch)            2 lines/inch                   <Esc>&l2D
  719.                                 3 lines/inch                   <Esc>&l3D
  720.                                 4 lines/inch                   <Esc>&l4D
  721.                                 6 lines/inch                   <Esc>&l6D
  722.                                 8 lines/inch                   <Esc>&l8D
  723.                                 12 lines/inch                  <Esc>&l12D
  724.                                 16 lines/inch                  <Esc>&l16D
  725.                                 24 lines/inch                  <Esc>&l24D
  726.                                 48 lines/inch                  <Esc>&l48D
  727.  
  728.  
  729. CURSOR POSITIONING:
  730. Vertical and Horizontal:
  731.   Vertical Position             # of Rows                      <Esc>&a#R
  732.                                 # of Dots                      <Esc>*p#Y
  733.                                 # of Decipoints                <Esc>&a#V
  734.  
  735.   Horizontal Position           # of Columns                   <Esc>&a#C
  736.                                 # of Dots                      <Esc>*p#X
  737.                                 # of Decipoints                <Esc>&a#H
  738.  
  739.   Half Line Feed                                               <Esc> =
  740.  
  741. End-of-Line Termination:
  742.   Line Termination              CR=CR; LF=LF; FF=FF            <Esc>&k0G
  743.                                 CR=CR+LF; LF=LF; FF=FF         <Esc>&k1G
  744.                                 CR=CR; LF=CR+LF; FF=CR+FF      <Esc>&k2G
  745.                                 CR=CR+LF; LF=CR+LF; FF=CR+FF   <Esc>&k3G
  746.  
  747. Push/Pop Position:
  748.   Push/Pop Position             Push                           <Esc>&f0S
  749.                                 Pop                            <Esc>&f1S
  750.  
  751.  
  752. FONT SELECTION:
  753. Symbol Set Selection:
  754.   Primary Symbol Set            ISO 60: Norwegian 1            <Esc>(0D
  755.                                 ISO 4: United Kingdom          <Esc>(1E
  756.                                 ISO 69: French                 <Esc>(1F
  757.                                 ISO 21: German                 <Esc>(1G
  758.                                 ISO 15: Italian                <Esc>(0I
  759.                                 Microsoft Publishing           <Esc>(6J
  760.                                 DeskTop                        <Esc>(7J
  761.                                 PS Text                        <Esc>(10J
  762.                                 Ventura International          <Esc>(13J
  763.                                 Ventura US                     <Esc>(14J
  764.                                 Ventura ITC Zapf Dingbats      <Esc>(9L
  765.                                 PS ITC Zapf Dingbats           <Esc>(10L
  766.                                 ITC Zapf Dingbats Series 100   <Esc>(11L
  767.                                 ITC Zapf Dingbats Series 200   <Esc>(12L
  768.                                 ITC Zapf Dingbats Series 300   <Esc>(13L
  769.                                 PS Math                        <Esc>(5M
  770.                                 Ventura Math                   <Esc>(6M
  771.                                 Math-8                         <Esc>(8M
  772.                                 ECMA-94 Latin 1                <Esc>(0N
  773.                                 ISO 11: Swedish                <Esc>(0S
  774.                                 ISO 17: Spanish                <Esc>(2S
  775.                                 ISO 6: ASCII                   <Esc>(0U
  776.                                 Legal                          <Esc>(1U
  777.                                 Roman-8                        <Esc>(8U
  778.                                 Windows                        <Esc>(9U
  779.                                 PC-8                           <Esc>(10U
  780.                                 PC-8 D/N                       <Esc>(11U
  781.                                 PC 8                           <Esc>(12U
  782.                                 Pi Font                        <Esc>(15U
  783.  
  784. Spacing:
  785.   Primary Spacing               Fixed                          <Esc>(s0P
  786.                                 Proportional                   <Esc>(1P
  787.  
  788. Pitch:
  789.   Primary Pitch                 # Characters/inch              <Esc>(s#H
  790.   Set Pitch Mode                10.0 cpi                       <Esc>&k0S
  791.                                 16.67 cpi                      <Esc>&k2S
  792.                                 12.0 cpi                       <Esc>&k4S
  793.  
  794. Point Size:
  795.   Primary Height                # Points                       <Esc>(s#V
  796.  
  797. Style:
  798.   Primary Style                 Upright (Solid)                <Esc>(s0S
  799.                                 Italic                         <Esc>(s1S
  800.                                 Condensed                      <Esc>(s4S
  801.                                 Condensed Italic               <Esc>(s5S
  802.                                 Compressed (Extra Condensed)   <Esc>(s8S
  803.                                 Expanded                       <Esc>(s24S
  804.                                 Outline                        <Esc>(s32S
  805.                                 Inline                         <Esc>(s64S
  806.                                 Shadowed                       <Esc>(s128S
  807.                                 Outline Shadowed               <Esc>(s160S
  808.  
  809. **Additional style values may be obtained from the related documentation
  810. provided with HP's font products.
  811.  
  812. **PCL5 LaserJet Printers allow you to specify complex structures (contours,
  813. outlines, shading etc.) and widths as well as posture. Refer to the PCL5
  814. LaserJet Technical Reference Manual.
  815.  
  816.  
  817. Stroke Weight:
  818.   Primary Font Stroke Weight    Ultra Thin                     <Esc>(s-7B
  819.                                 Extra Thin                     <Esc>(s-6B
  820.                                 Thin                           <Esc>(s-5B
  821.                                 Extra Light                    <Esc>(s-4B
  822.                                 Light                          <Esc>(s-3B
  823.                                 Demi Light                     <Esc>(s-2B
  824.                                 Semi Light                     <Esc>(s-1B
  825.                                 Medium (book or text)          <Esc>(s0B
  826.                                 Semi Bold                      <Esc>(s1B
  827.                                 Demi Bold                      <Esc>(s2B
  828.                                 Bold                           <Esc>(s3B
  829.                                 Extra Bold                     <Esc>(s4B
  830.                                 Black                          <Esc>(s5B
  831.                                 Extra Black                    <Esc>(s6B
  832.                                 Ultra Black                    <Esc>(s7B
  833.  
  834. Primary Typeface Family:
  835.   Typeface Family               Courier                        <Esc>(s3T
  836.                                 Univers                        <Esc>(s4148T
  837.                                 LinePrinter                    <Esc>(s0T
  838.                                 CG Times                       <Esc>(s4101T
  839.  
  840. **Many more typeface families are supported.  Refer to the PCL Comparison Guide.
  841.  
  842.  
  843. Font Default:
  844.   Font Default                  Primary Font                   <Esc>(3@
  845.                                 Secondary Font                 <Esc>)3@
  846. Underline:
  847.   Underline                     Enable Fixed                   <Esc>&d0D
  848.                                 Enable Floating                <Esc>&d3D
  849.                                 Disable                        <Esc>&d@
  850.  
  851. Transparent Print:
  852.   Transparent Print Data        # of Bytes                     <Esc>&p#X
  853.  
  854.  
  855. FONT MANAGEMENT:
  856.   Assign Font ID                Font ID #                      <Esc>*c#D
  857.  
  858.   Font and Character Control    Delete all Fonts               <Esc>*c0F
  859.                                 Delete all temporary fonts     <Esc>*c1F
  860.                                 Delete last font ID specified  <Esc>*c2F
  861.                                 Delete last character
  862.                                   specified                    <Esc>*c3F
  863.                                 Make font temporary            <Esc>*c4F
  864.                                 Copy/Assign the currently
  865.                                   invoked font as temporary    <Esc>*c6F
  866.  
  867. Font Selection by ID Number:
  868.   Select font (with ID #)       ID # primary font              <Esc>(#X
  869.                                 ID # secondary font            <Esc>)#X
  870.  
  871.  
  872. SOFT FONT CREATION:
  873.   Font descriptor               # of bytes                     <Esc>)s#W [data]
  874.     (font header)
  875.   Download character            # of bytes                     <Esc>(s#W [data]
  876.   Character code                Character code # (decimal)     <Esc>*c#E
  877.  
  878.  
  879. GRAPHICS:
  880. PCL Vector Graphics Switching/Set-Up:
  881.   Enter PCL Mode                Use previous PCL cursor
  882.                                   position                     <Esc>%0A
  883.                                 Use current HP-GL/2 pen
  884.                                  position cursor position      <Esc>%1A
  885.  
  886.   Enter HP-GL/2 Mode            Use Previous HP-GL/2 pen
  887.                                   position                     <Esc>%0B
  888.                                 Use current PCL cursor
  889.                                   position                     <Esc>%1B
  890.  
  891.   HP-GL/2 Plot
  892.     Horizontal Size             Horizontal size in inches      <Esc>*c#K
  893.  
  894.   HP-GL/2 Plot
  895.     Vertical Size               Vertical size in inches        <Esc>*c#L
  896.  
  897.   Set Picture Frame
  898.     Anchor Point                Set anchor point to cursor
  899.                                   position                     <Esc>*c0T
  900.   Picture Frame
  901.     Horizontal Size             Decipoints                     <Esc>*c#X
  902.  
  903.   Picture Frame
  904.     Vertical Size               Decipoints                     <Esc>*c#Y
  905.  
  906. Raster Graphics:
  907.    Raster Resolution            75 dots/inch                   <Esc>*t75R
  908.                                 100 dots/inch                  <Esc>*t100R
  909.                                 150 dots/inch                  <Esc>*t150R
  910.                                 300 dots/inch                  <Esc>*t300R
  911.  
  912. Raster Graphics Presentation:
  913.   Raster Graphics
  914.     Presentation                Rotate image                   <Esc>*r0F
  915.                                 LaserJet
  916.                                   Landscape compatible         <Esc>*r3F
  917.  
  918.   Start Raster Graphics         Left Raster Graphics
  919.                                   Margin                       <Esc>*r0A
  920.                                 Current Cursor                 <Esc>*r1A
  921.  
  922.   Raster Y Offset               # of Raster Lines
  923.                                   of vertical movement         <Esc>*b#Y
  924.  
  925.   Set Raster
  926.     Compression Mode            Uncoded                        <Esc>*b0M
  927.                                 Run-Length Encoded             <Esc>*b1M
  928.                                 Tagged Image File
  929.                                   Format                       <Esc>*b2M
  930.                                 Delta Row                      <Esc>*b3M
  931.  
  932.   Transfer Raster Data          # of Bytes                     <Esc>*b#W [data]
  933.  
  934.   End Raster Graphics                                          <Esc>*rB
  935.  
  936.   Raster Height                 # Raster Rows                  <Esc>*r#T
  937.  
  938.   Raster Width                  # Pixels of the
  939.                                   Specified Resolution         <Esc>*r#S
  940.  
  941.  
  942. THE PRINT MODEL:
  943. Imaging:
  944.   Select Current
  945.     Pattern                     Solid Black (default)          <Esc>*v0T
  946.                                 Solid White                    <Esc>*v1T
  947.                                 HP-defined Shading
  948.                                   Pattern                      <Esc>*v2T
  949.                                 HP-defined Cross-Hatched
  950.                                   Pattern                      <Esc>*v3T
  951.  
  952.   Select Source
  953.     Transparency Mode           Transparent                    <Esc>*v0N
  954.                                 Opaque                         <Esc>*v1N
  955.  
  956.   Select Pattern
  957.     Transparency Mode           Transparent                    <Esc>*v0O
  958.                                 Opaque                         <Esc>*v1O
  959.  
  960. Rectangular Area Fill:
  961.   Rectangle Width
  962.     (Horizontal Size)           # of dots                      <Esc>*c#A
  963.                                 # of decipoints                <Esc>*c#H
  964.  
  965.   Rectangle Height
  966.     (Vertical Size)             # of dots                      <Esc>*c#B
  967.                                 # of decipoints                <Esc>*c#V
  968.  
  969.   Fill Rectangular Area         Solid Black                    <Esc>*c0P
  970.                                 Erase (solid white fill)       <Esc>*c1P
  971.                                 Shaded Fill                    <Esc>*c2P
  972.                                 Cross-hatched Fill             <Esc>*c3P
  973.                                 Current Pattern                <Esc>*c5P
  974.  
  975.   Pattern ID                    % of Shading or
  976.                                   Type of Pattern              <Esc>*c#G
  977.  
  978.   Shading                       2% Gray                        <Esc>*c2G
  979.                                 10% Gray                       <Esc>*c10G
  980.                                 15% Gray                       <Esc>*c15G
  981.                                 30% Gray                       <Esc>*c30G
  982.                                 45% Gray                       <Esc>*c45G
  983.                                 70% Gray                       <Esc>*c70G
  984.                                 90% Gray                       <Esc>*c90G
  985.                                 100% Gray                      <Esc>*c100G
  986.  
  987.   Pattern                       1 Horizontal Line              <Esc>*c1G
  988.                                 2 Vertical Lines               <Esc>*c2G
  989.                                 3 Diagonal Lines               <Esc>*c3G
  990.                                 4 Diagonal Lines               <Esc>*c4G
  991.                                 5 Square Grid                  <Esc>*c5G
  992.                                 6 Diagonal Grid                <Esc>*c6G
  993.  
  994.  
  995. MACROS:
  996.   Macro ID                      Macro ID #                     <Esc>&f#Y
  997.  
  998.   Macro Control                 Start Macro Definition         <Esc>&f0X
  999.                                 Stop Macro Definition          <Esc>&f1X
  1000.                                 Execute Macro                  <Esc>&f2X
  1001.                                 Call Macro                     <Esc>&f3X
  1002.                                 Enable Overlay                 <Esc>&f4X
  1003.                                 Disable Overlay                <Esc>&f5X
  1004.                                 Delete Macros                  <Esc>&f6X
  1005.                                 Delete All Temporary Macros    <Esc>&f7X
  1006.                                 Delete Macro ID                <Esc>&f8X
  1007.                                 Make Temporary                 <Esc>&f9X
  1008.                                 Make Permanent                 <Esc>&f10X
  1009.  
  1010.  
  1011. PROGRAMMING HINTS:
  1012. End-of-Line Wrap                Enabled                        <Esc>&s0C
  1013.                                 Disabled                       <Esc>&s1C
  1014.  
  1015. Display Functions               ON                             <Esc>Y
  1016.                                 OFF                            <Esc>Z
  1017.  
  1018. These escape sequences can be found in your HP Printer User's Manual.
  1019.  
  1020.  Source Code Licensing:
  1021.  
  1022.  fill out the sample invoice program supplied with LJPRTIII or
  1023.  complete and returning the form below.
  1024.  
  1025.  
  1026.           LJPRTIII (TM) Source Code License
  1027.  
  1028.           Please complete this form and mail it with your check or money
  1029.           order payable to:
  1030.  
  1031.   U.S.A
  1032.   ──────
  1033.   Capitol City Software, Inc.
  1034.   PO Box 15303
  1035.   Minneapolis, MN  55415-0303
  1036.  
  1037.   Europe
  1038.   ───────
  1039.   SOFTSOL GmbH               Tel.:+49-40-7661290
  1040.   Neue Str.35a               Fax :+49-40-7665664
  1041.   21073 Hamburg              BBS :+49-40-7665527
  1042.   Germany                    CIS :100112,3401
  1043.  
  1044.  
  1045.                       Name: ___________________________________________
  1046.  
  1047.                    Company: ___________________________________________
  1048.  
  1049.                      Title: ___________________________________________
  1050.  
  1051.                    Address: ___________________________________________
  1052.  
  1053.                             ___________________________________________
  1054.  
  1055.           City, State, Zip: ___________________________________________
  1056.  
  1057.                Voice phone: ___________________________________________
  1058.  
  1059.                  Fax phone: ___________________________________________
  1060.  
  1061.  
  1062.           Diskette format:  5.25" disk  ___    3.5" disk ___
  1063.  
  1064.  
  1065.  
  1066.           Additional comments or suggestions: _____________________________
  1067.  
  1068.           _________________________________________________________________
  1069.  
  1070.           _________________________________________________________________
  1071.  
  1072.  
  1073.  
  1074.    Full Source Code Registration, includes diskette with
  1075.        current version                                              $ 39.95
  1076.  
  1077.                                                         ───────────────────
  1078.  
  1079.    Minnesota residents add 7.0% sales tax.                            $2.80
  1080.  
  1081.  
  1082.    Please add $5 shipping and handling per order                      $5.00
  1083.  
  1084.  
  1085.                                                   Total Enclosed     ______
  1086.  
  1087.  
  1088.    When ordering through SOFTSOL in Europe you can also use your
  1089.    VISA/MasterCard, please provide us with the no.,expiry and name
  1090.    on the card.
  1091.  
  1092.           Thank you for your support!                76276,1333
  1093.